既存のレプリケーション定義を表示し、レプリケーション・ステータスを監視します。『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』で説明しているように、新しいリリースのTimesTenへのアップグレードにも、ttRepAdminユーティリティを使用できます。
アクセス制御がTimesTenのインスタンスに対して有効である場合、このユーティリティではADMIN権限またはデータ・ストア・オブジェクトの所有権が必要です。接続文字列またはDSNに認証情報が指定されない場合、続行する前にユーザーIDおよびパスワードの入力が求められます。
ttRepAdmin [-h | -help | -?]
ttRepadmin [-V | -version]
ttRepAdmin -self -list [-scheme [owner.]schemeName]
{DSN | -connStr connectionString}ttRepAdmin -receiver [-name receiverName]
[-host receiverHostName] [-state receiverState] [-reset] [-list] [-scheme [owner.]schemeName] {DSN | -connStr connectionString}ttRepAdmin -log {DSN | -connStr connectionString}
ttRepAdmin -showstatus {DSN | -connStr connectionString}
ttRepAdmin -showconfig {DSN | -connStr connectionString}
ttRepAdmin -bookmark {DSN | -connStr connectionString}
ttRepAdmin -wait [-name receiverName] [-host receiverHostName]
[-timeout seconds] {DSN | -connStr connectionString}ttRepAdmin -duplicate -from srcDataStoreName
-host srcDataStoreHost [-memcpy] [-setMasterRepStart] [-ramLoad] [-delXla] [-UID userId] [-PWD pwd | -PWDCrypt encryptedPwd] [-drop { [owner.]table ... | [owner.]sequence |ALL }] [-truncate { [owner.]table ... | ALL }] [-compression 0 | 1] [-bandwidthmax maxKbytesPerSec] [-keepCG [-cacheUid cacheUid [-cachePwd cachePwd]] [-recoveringNode | -deferCacheUpdate] | -nokeepCG] [-remoteDaemonPort portNo] [-verbosity {0|1|2}] [-localhost localHostName] {destDSN | -connStr connectionString}
ttRepAdminユーティリティは、多くのレプリケーション処理に使用できる多用途のレプリケーション・ユーティリティです。これらの処理は、次のカテゴリに分類されます。
次の形式でttRepAdminを使用すると、ヘルプおよびTimesTenの現在のバージョンを取得できます。
ttRepAdmin [-h | -help | -?]
ttRepadmin [-V | -version]
次の形式でttRepAdminを使用すると、データ・ストアに関するサマリー情報を取得できます。
ttRepAdmin -self -list [-scheme [owner.]schemeName]
ttRepAdmin -self -listには、次のオプションがあります。
ttRepAdmin -self -list my_dsn
前述の構文によって、データ・ストアmy_dsn
のレプリケーション定義に関する情報が表示されます。
次の形式のttRepAdminを使用すると、ステータスのチェックまたはサブスクライバ(受信側)・データ・ストアの状態の再設定を実行できます。
ttRepAdmin -receiver [-name receiverName]
[-host receiverHostName] [-state receiverState] [-reset] [-list] [-scheme [owner.]schemeName] {DSN | -connStr connectionString}
ttRepAdmin -receiverには、次のオプションがあります。
ttRepAdmin -receiver -list my_dsn
前述の構文によって、マスター・データ・ストアmy_dsnのすべてのサブスクライバのレプリケーション情報が表示されます。
ttRepAdmin -receiver -name rep_dsn -list my_dsn
前述の構文によって、マスター・データ・ストアmy_dsnのrep_dsn
サブスクライバのレプリケーション情報が表示されます。
ttRepAdmin -receiver -name rep_dsn -reset my_dsn
前述の構文によって、マスター・データ・ストアのrep_dsn
サブスクライバに対するレプリケーションのブックマークが再設定されます。レプリケートされたデータ・ストアをttMigrateまたはttBulkCpで移行する場合にのみ使用してください。
ttRepAdmin -receiver -name rep_dsn -state Start my_dsn
前述の構文によって、マスター・データ・ストアmy_dsnに対してrep_dsn
サブスクライバ・データ・ストアのレプリケーション状態がStart状態に再設定されます。
次の形式のttRepAdminを使用すると、マスター・データ・ストアと同じコンテンツを持つ新しいデータ・ストアを作成できます。
ttRepAdmin -duplicate
コマンドを実行する前に、ttStatusを使用して、ソース・データ・ストアに対してレプリケーション・エージェントが起動していることを確認します。
ttRepAdmin -duplicate -from srcDataStoreName
-host srcDataStoreHost [-memcpy] [-setMasterRepStart] [-ramLoad] [-delXla] [-UID userId] [-PWD pwd | -PWDCrypt encryptedPwd] [-drop { [owner.]table ... | [owner.]sequence |ALL }] [-truncate { [owner.]table ... | ALL }] [-compression 0 | 1] [-bandwidthmax maxKbytesPerSec] [-keepCG [-cacheUid cacheUid [-cachePwd cachePwd]] [-recoveringNode | -deferCacheUpdate] | -nokeepCG] [-remoteDaemonPort portNo] [-verbosity {0|1|2}] [-localhost localHostName] {destDSN | -connStr connectionString}
ttRepAdmin -duplicateには、次のオプションがあります。
-bandwidthmax maxKbytesPerSec | 複製処理によってmaxKbytesPerSec KB/sを超えるデータがネットワークに送信されないように指定します。値0は、帯域幅に制限がないことを示します。デフォルトは0です。 |
-compression 0 | 1 | 複製処理中の圧縮を有効または無効にします。デフォルトは0です(無効)。 |
-connStr connectionString | 新しいデータ・ストアの接続文字列を指定します。 |
-delXla | 複製処理の一部として、すべてのXLAブックマークを削除します。このオプションは、複製データ・ストアにブックマークをコピーしない場合に使用します。 |
destDSN | 新しいデータ・ストアのデータソース名を示します。 |
-duplicate処理中にコピーされたものの、レプリケーション・スキームには含まれていない表または順序を破棄します。この表がキャッシュ・グループの表である場合、このオプションは無視されます。
| |
-duplicate | ネットワーク間でデータ・ストアの内容を転送するために、指定したデータ・ストアの複製をレプリケーションを使用して作成します。 詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のマスター・データ・ストアのサブスクライバへのコピーに関する項および障害のあったデータ・ストアのリカバリに関する項を参照してください。このオプションを使用すると、 -keepCG を使用しないかぎり、キャッシュ・グループのTimesTen表は、新しいデータ・ストアの通常のTimesTen表として複製されます。 |
-from srcDataStoreName | -duplicate とともに使用して、送信側データ・ストア(またはマスター・データ・ストア)の名前を指定します。srcDataStoreName は、データ・ストア・パス名の最後の部分です。 |
| 送信側データ・ストア(またはマスター・データ・ストア)のホスト名またはTCP/IPアドレスを定義します。 |
指定したキャッシュ・グループの表をキャッシュ・グループの表のままとするか、通常の表に変換するかどうかを指定します。cacheUidはキャッシュ管理ユーザーのID、またcachePwdは関連付けられたパスワードです。パスワードを指定しなかった場合、ttRepAdminからパスワードの入力を求められます。デフォルトは -noKeepCG です。 -recoveringNode は、AWTまたは自動リフレッシュ・キャッシュ・グループを含むレプリケーション・スキームに対して、障害を起こしたノードをリカバリするために-duplicate を使用することを指定します。新規または変更したレプリケーション・スキームをノードにロール・アウトする場合は、-recoveringNode を指定しないでください。Oracleデータベースに格納されているメタデータを-duplicate で更新できず、すべての増分自動リフレッシュ・キャッシュ・グループがレプリケートされている場合、キャッシュ・エージェントおよびレプリケーション・エージェントが起動するまで、メタデータに対する更新は自動的に保留されます。 -deferCacheUpdate を指定すると、キャッシュ・エージェントおよびレプリケーション・エージェントが起動し、エージェントがOracleデータベースに接続できるようになるまで、Oracleデータベースに格納されているメタデータに対する変更は強制的に保留されます。このオプションを使用すると、一部の増分キャッシュ・グループがレプリケートされない場合、あるいは-duplicate を使用して新規または変更されたレプリケーション・スキームをノードに対してロール・アウトする場合は、完全自動リフレッシュが行われる可能性があります。 |
|
-localhost hostName | -duplicate および-setMasterRepStart とともに使用して、ローカル・ホストの名前またはIPアドレスを明示的に指定します。 |
-memcpy | ディスクレス・データ・ストアを複製する場合に -duplicate とともに使用して、リモート・データ・ストアがロックされている時間を短縮します。 |
-PWD pwd | アクセス制御が有効な場合、UIDオプションで指定されたユーザーのパスワードを指定します。 |
アクセス制御が有効な場合、UIDオプションで指定されたユーザーの暗号化されたパスワードを指定します。 |
|
-ramLoad | 複製処理の完了時に、メモリー内にデータ・ストアを保持します。このオプションによって、大規模なデータ・ストアをコピーする場合にデータ・ストアのアンロードとリロードのサイクルが回避され、複製処理のパフォーマンスが改善されます。複製処理の終了後、データ・ストアのRAMポリシーはmanualに設定されます。RAMポリシーをさらに変更するには、ttAdminユーティリティを使用します。 |
-remoteDaemonPort portNo | このオプションの引数に指定された値が0(ゼロ)以外の場合、その値をポート番号として使用します。 値が0(ゼロ)の場合は、デフォルトの動作を使用してポート番号を決定します。
-remoteDaemonPortオプションは、自動ポート構成を使用しているストアを持つデータ・ストアの複製には使用できません。 |
-setMasterRepStart | -duplicate とともに使用した場合、このオプションは、新たに作成されたデータ・ストアのレプリケーション状態を、ネットワーク間でデータ・ストアがコピーされる直前にStart状態に設定します。これにより、複製処理の後にソース・データ・ストアに行われたすべての更新が、新しく複製されたローカル・データ・ストアに確実にレプリケートされます。データ・ストアの不要なログ・ファイルは削除されます。 |
-truncate | -duplicate 処理の一部としてコピーされたものの、レプリケーション・スキームには含まれていない表を切り捨てます。この表がキャッシュ・グループの表である場合、このオプションは無視されます。 |
-UID userid | アクセス制御が有効な場合は、コピー対象のピアでADMIN権限を持つユーザーのユーザーIDを指定する必要があります。 |
-verbosity {0 | 1 | 2} | 複製処理で実行される通信段階の詳細を表示し、複製の転送の進捗情報をレポートします。 0 : 診断情報は返されません(デフォルト)。 1 : 複製パラメータの詳細を stdout にレポートします。 2 : 複製パラメータの詳細と、複製の転送処理の詳細を stdout にレポートします。 |
ttRepAdmin -duplicate -from srcDataStoreName -host srcDataStoreHost
[destDSN | -connStr connectionString]
前述の構文によって、レプリケーションが可能なリモートの一時データ・ストアまたは永続データ・ストアのレプリカが作成されます。この処理は、バックアップ・データ・ストアの自動作成に使用できます。
リモート・データ・ストアがディスクレスの場合は、この処理によって、リモートのソース・データ・ストアで行われるメモリー転送の期間全体に対してデータ・ストア・レベル・ロックが設定されます。これによって、複製処理時に他の接続がリモート・データ・ストアにアクセスできなくなります。
前述のttRepAdminの構文の構成要素について説明します。
リモート・データ・ストアがディスクレスの場合は、前述のとおりに-memcpy
オプションを使用して、レプリケーションが可能なリモートの一時データ・ストアまたは永続データ・ストアのレプリカを作成できます。この追加のオプションを指定してディスクレス・モードでttRepAdmin -duplicate
を実行すると、ネットワーク間でデータ・ストアのコピーが実行される前に、リモート・データ・ストアの中間コピーがメモリーに作成されます。リモート・データ・ストアがロックされるのは、メモリー間コピーの実行中のみになります。このため、ディスクレス・モードでこの処理を行うとデータベースのロック時間が短縮されます。リモート・マシンのメモリー間の帯域幅がリモート・マシンとローカル・マシン間のネットワーク・データの帯域幅を超える場合は、リモート・マシンでのロック時間が短縮されます。追加の要件として、リモートでの余分なコピーのために使用できる十分なRAMが必要です。
ttRepAdmin -duplicate -from srcDataStoreName
-host srcDataStoreHost
前述の構文では、-setMasterRepStart
オプションによって、srcDataStoreNameデータ・ストアのレプリケーション状態がネットワーク間でコピーされる前にStart状態に設定にされ、メモリー内にデータ・ストアが保持されます。-localhost
オプションを使用してローカル・ホストを明示的に指定できます。これは、ローカル・ホストでIPアドレスなどの標準以外の名前が使用されている場合に有効です。これらのオプションを使用すると、複製処理後にリモート・データ・ストアで行われたすべての更新が、新しく作成またはリストアされたローカル・データ・ストアにレプリケートされます。
前述のttRepAdminの構文の構成要素について説明します。
このユーティリティでは、データ・ストアに一時表定義は複製できますが、インスタンスは複製できません。
次の形式のttRepAdminを使用すると、ログ・ファイルのサイズ、ブックマークの位置、またはマスター・データ・ストアのレプリケーション構成を確認できます。
ttRepAdmin -log {DSN | -connStr connectionString}
ttRepAdmin -showstatus {DSN | -connStr connectionString}
ttRepAdmin -showconfig {DSN | -connStr connectionString}
ttRepAdmin -bookmark {DSN | -connStr connectionString}
The ttRepAdmin監視処理には、次のオプションがあります。
ttRepAdmin -log DSN
前述の構文によって、他のデータ・ストアに更新を転送するためにレプリケーションで保持されるログ・ファイルの数がレポートされます。レプリケーション・エージェントは、ログ・ファイル内のすべての更新が各サブスクライバ・データ・ストアに正常に転送されるまでそのログ・ファイルを保持します。
ttRepAdmin -showconfig DSN
前述の構文によって、レプリケーション設定全体がレポートされます。指定したDSNのすべてのサブスクライバ、レプリケートされている表の名前と詳細、およびすべてのサブスクリプションが表示されます。
ttRepAdmin -showstatus DSN
前述の構文によって、指定したDSNのデータ・ストアの現在の状態がレポートされます。出力には、レプリケートされたデータ・ストアのレプリケーション・エージェント内のすべてのスレッド、ブックマークの位置、ポート番号および通信プロトコルの状態が含まれます。
ttRepAdmin -bookmark DSN
前述の構文によって、レプリケーションで必要な最も古いログ・レコード、ディスクに書き込まれた最後のログ・レコードおよび最後に生成されたログ・レコードのログ順序番号が出力されます。
次の形式のttRepAdminを使用すると、コールが戻る前に、ログ内のすべての更新をすべてのサブスクライバにレプリケートできます。
ttRepAdmin -wait [-name receiverName] [-host receiverHostName]
ttRepAdmin -waitには、次のオプションがあります。
ttRepAdmin -wait -name receiverName -host receiverHostName
前述の構文によって、このプログラムの起動時にコミットされたすべての更新がサブスクライバreceiverNameに転送され、このサブスクライバによってそれらのすべての更新がサブスクライバ・データ・ストアで永続コミットされたことが確認されたことを確認する方法が提供されます。タイムアウトで待機時間(秒)が制限されます。
注意: | すべての書込みトランザクション・アクティビティがストアで静止された後にttRepAdmin -wait が起動された場合(アクティブなトランザクションおよび開始済のトランザクションがない状態)、すべての更新がサブスクライバで永続的にコミットされていることを示す確認応答をサブスクライバが送信するまでに、60秒以上かかる可能性があります。 |
ttRepAdmin -wait -dsn DSN
前述の構文では、タイムアウトおよびサブスクライバ名が指定されていない場合、ttRepAdminは、このプログラムの起動時にコミットされたすべての更新がすべてのサブスクライバに転送され、それらのすべての更新がサブスクライバ・データ・ストアで永続コミットされたことがすべてのサブスクライバによって確認されるまで戻されません。
ttRepAdminユーティリティは、TimesTen Data Manager DSNに対してのみサポートされます。TimesTen Client DSNでは、サポートされません。
2つ以上のレプリケーション・スキームを指定する場合、または2つ以上のスキームが特定のデータ・ストアを含む場合、-scheme
オプションを使用する必要があります。
SQLの構成を使用すると、同じデータ・ストアに複数のレプリケーション・スキームを作成できます。レプリケーション・スキームが1つしかない場合、ttRepAdminユーティリティは、自動的にスキームを検出します。2つ以上のスキームがある場合は、ttRepAdmin -scheme
オプションを使用して、使用するスキームを指定する必要があります。
異なるホスト上の同じ名前のデータ・ストアにレプリケーションを構成する場合、-host
を使用して、どのデータ・ストアを処理するのかを指示できます。たとえば、すべてのサブスクライバがDATAという名前を持つ場合、ホストSW1のレプリケーション状態を設定するには、次のように実行します。
ttRepAdmin -receiver -name DATA -host SW1 -state start DSN
TimesTenレプリケーションの詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』を参照してください。
アップグレードの例は、『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』のアップグレードに関する説明を参照してください。